import axios from 'axios'
const Mock = require('mockjs');
import querystring from 'querystring'
import Router from 'next/router'
import { Input,message } from 'antd';
//axios.defaults.baseURL= 'http://mock.lifebook.xin/mockjs/8/';//mock环境
axios.defaults.baseURL= 'http://192.168.1.130:8765/';//测试环境
// axios.defaults.baseURL= 'http://preapi.funeralchain.com:8765/';//预发布环境
//axios.defaults.baseURL= 'http://api.funeralchain.com:8765/';//生产环境
// axios.defaults.baseURL= 'http://192.168.6.32:8765/';
// 添加响应拦截器
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

//封装好的get和post接口，调用方法情况action文件
let fetchData = axios.create({
    baseURL: axios.defaults.baseURL, //设置默认api路径
    timeout: 20000, //设置超时时间
    headers:axios.defaults.headers,//头部
    transformRequest:(data)=>{
      return querystring.stringify(data)
    }
})
fetchData.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  console.log("请求")
  if(response.data.dataCode=="2"){//token失效    
    message.error('登录超时，请重新登录');
    setTimeout(()=>{
      Router.push({
        pathname: '/index',
      })
      sessionStorage.removeItem('user');
    },1000)
    
    return;     
  }
  if(response.data.dataCode=="0"){
    message.error(response.data.respMsg);
    throw new Error(response.data.respMsg);
    return;
  }
  response = Mock.mock(response.data)
  return response;
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
});

export default fetchData